var appPath = getAppPath();

$(function() {
	initMemGrid();//初始化加载
	
	// 检索日期范围
	$("#queryDateStart").datebox({
		formatter:dtFmt,
		parser:dtParser
	});
	$("#queryDateEnd").datebox({
		formatter:dtFmt,
		parser:dtParser
	});
});

function dtFmt(dt){
	var y = dt.getFullYear();
    var m = dt.getMonth()+1;
    var d = dt.getDate();
    return y+'-'+(m<10?('0'+m):m)+'-'+(d<10?('0'+d):d);//格式化mm-dd
}
function dtParser(s){
    if (!s) return new Date();
    var ss = (s.split('-'));
    var y = parseInt(ss[0],10);
    var m = parseInt(ss[1],10);
    var d = parseInt(ss[2],10);
    if (!isNaN(y) && !isNaN(m) && !isNaN(d)){
        return new Date(y,m-1,d);
    } else {
        return new Date();
    }
}

// 会员列表
function initMemGrid() {
	$('#memberInfo').datagrid({
		url : appPath + "/itbMember/pageMemberInfo.action",//获取会员信息
		height : 'full',
		striped : true,
		fitColumns : true,
		queryParams : getQueryParam1(),
		singleSelect : false,
		selectOnCheck : true,
		checkOnSelect : true,
		frozenColumns : [[{field : 'ck',checkbox : 'true',width : 10,align : 'center',sortable : false}]],
		columns : [[
		   {field : 'head_url',title : '头像',width : 35,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex) {
					var retUrl = '';
	        		if(value==null || value==''){
	        			value = 'http://itbour-back.oss-cn-hangzhou.aliyuncs.com/designer/default.jpg';
	        		}
	        		retUrl = '<a href="' +value+ '" target="_blank">'
	        		+ '<div style="margin:2px;;display:table;text-align:center;height:80px;width:80px;">'
	        		+ '<span align="center" style="display:table-cell;vertical-align:middle">'
	        		+ '<img src="'+value+'?x-oss-process=image/resize,m_lfit,h_120,w_120'
	        		+ '" style="border-radius:17px;display:inline;max-height:80px;max-width:80px;"/></span></div></a>';
	        		return retUrl;
				}
		   }, 
		   {field : 'member_id',title : 'ID',width : 15,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex) {
					return '<span style="color:#B22222;">'+value+'</span>';
				}
		   },
		   {field : 'user_id',title : '用户ID',width : 30,align : 'center',sortable : false},
		   {field : 'nickname',title : '昵称',width : 35,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex){
				if(value){
					return '<span style="color:#121212;">'+value+'</span>';
				}
				return '<span style="color:#919191;">-</span>';
				}
			}, 
			{field : 'wechat_nickname',title : '微信昵称',width : 35,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex){
					if(value){
						return '<span style="color:#121212;">'+value+'</span>';
					}
					return '<span style="color:#919191;">-</span>';
				}
			}, 
			{field : 'mobile',title : '会员手机',width : 35,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex) {
					if(value){
						return value;
					}
					return '<span style="color:#919191;">暂无</span>';
				}
			}, 
			{field : 'expiry_time',title : '截止日期',width : 30,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex) {
					if(value){
						return '<span style="word-break:normal;display:block;white-space:pre-wrap;overflow:hidden;color:#FF34B3;">'+value+'</span>';
					}
					return '-';
				}
			},
			{field:'state',title : '会员状态',width : 30,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex) {
					if (value){
						var ret = '其它';
						switch(value){
						case 10:ret = '<font color="green">余期充足</font>';break; 
						case 20:ret = '<font color="red">即将过期</font>';break;
						case 30:ret = '<font color="#FF7F00">已过期</font>';break;
						default :ret ='<font>异常会员</font>';break;
						}
						return ret;
					}
					return '-';
				}
			},
			{field:'last_expiry_time',title : '上次有效日期',width : 30,align : 'center',sortable : false,
				formatter:function(value,rowData,rowIndex){
					if(value){
						return '<span style="word-break:normal;display:block;white-space:pre-wrap;overflow:hidden;color:#8B8970;">'+value+'</span>';
					}
					return '-';
				}
			},
			{field:'desc',title : '备注信息',width : 50,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex) {
					return value||'-';
				}
			},
			{field : 'edit',title : '编辑',width : 18,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex) {
					return '<a href="javascript:void(0)" style="font-size:14px;" onclick="showDetail('+rowData.member_id+')">修改</a>';
				}
			},
			{field : 'create_time',title : '创建时间',width : 40,align : 'center',sortable : false,
				formatter:function(value,rowData,rowIndex){
					return '<span style="display:block;white-space:pre-wrap;">'+value+'</span>';
				}
			},
			{field : 'update_time',title : '修改时间',width : 40,align : 'center',sortable : false,
				formatter:function(value,rowData,rowIndex){
					return '<span style="display:block;white-space:pre-wrap;">'+value+'</span>';
				}
			}
			]],
		pagination : true,
		rownumbers : true,
		toolbar : [ {
			text : '新建会员',
			iconCls : 'icon-add',
			handler : function() {
				addMem();
			}
		},
		'-',
		{
			text : '删除会员',
			iconCls : 'icon-cancel',
			handler : function() {
				delMem();
			}
		},'-'
		]
	});
}

/**删除*/
function delMem(){
	var selectItem=$("#memberInfo").datagrid("getChecked");
	if(!selectItem || selectItem.length == 0){
		$.messager.alert('提示信息','请选择需要删除的内容！','warning');
		return;
	}
	$.messager.confirm("确认", "是否确认[删除]所选内容？",
		function(r){
	        if (r) { 
				var ids = "";
				$.each(selectItem, function(index, item){
					ids = ids + item.member_id + ",";
				});
				if(ids){
					ids = ids.substring(0, ids.length-1);
					var url = appPath+"/itbMember/delMemberInfo.action?ids="+ids;
					$.post(url,function(data){
						if(data=="ok"){
							$.messager.alert('提示信息','删除成功','info');
							doQuery1();
						}else{
							$.messager.alert('提示信息','删除失败','info');
						}
					});
				}
	        }
		}
	);
}

//获取单个会员信息
function showDetail(id){
	$("#editTable").show();
	$('#editForm').form('clear');
	$("#mberId").val(id);
	$("#editTypeM").combobox('enable');
	$("#chUserBtn").hide();
	$("#lastExpiryTime").attr('disabled','disabled');
	$("#editTypeM").combobox({
		data : [{type_id : 10,type_name : 'vip会员'}],
		valueField : 'type_id',
		textField : 'type_name',
		value:10
	});
	// 加载数据
	var url = appPath + "/itbMember/getOneMemberInfo.action?id="+id;
	$.get(url,function(ret){
		if (ret && ret.length>0){
			var info = ret[0];
			$("#editDesc").val(info.desc||'');
			$("#eUserId").val(info.user_id||'');
			$("#lastExpiryTime").val(info.last_expiry_time);;
			$("#expiryDate").datetimebox('setValue', info.expiry_time);
		}
	});
	$("#editBtn").show();
	$("#eUserId").attr('disabled','disabled');
	$('#editDlg').window({
		title : '修改会员',
		iconCls : 'icon-edit',
		modal : true,
		shadow : true,
		collapsible : false,
		minimizable : false,
		maximizable : false
	});
	$('#editDlg').window('move', {
		top : 20,
		left : 20
	});
	$('#editDlg').window('open');
}

//新建会员
function addMem() {
	$("#editTable").show();
	$('#editForm').form('clear');
	$("#chUserBtn").show();
	$("#mberId").val('');
	$("#lastExpiryTime").attr('disabled','disabled');
	$("#editTypeM").combobox('enable');
	$("#editTypeM").combobox({
		data : [{type_id : 10,type_name : 'vip会员'}],
		valueField : 'type_id',
		textField : 'type_name',
		value:10
	});
	$("#editBtn").show();
	$("#eUserId").attr('disabled','disabled');
	$('#editDlg').window({
		title : '新建会员',
		iconCls : 'icon-edit',
		modal : true,
		shadow : true,
		collapsible : false,
		minimizable : false,
		maximizable : false
	});

	$('#editDlg').window('move', {
		top : 20,
		left : 20
	});
	$('#editDlg').window('open');
}

function showUserInfo(){
	$("#userBtn").show('slow');
	$("#userForm").form('clear');
	$('#userInfoDlg').window({
		title:'显示用户信息',
		iconCls:'icon-edit',
		left:'300px',
		modal: true,
		shadow: true,
		collapsible:false,
		minimizable:false,
		maximizable:false
	});
	initUserInfoGrid();
	$('#userInfoDlg').window('move',{top:0,left:200});
	$('#userInfoDlg').window('open',{left:"20px", top:"0px"});
}

//确定提交 新建||修改
function doEdit(){
	var mebId = $("#mberId").val();//会员ID
	var userId = $("#eUserId").val();
	var type = $("#editTypeM").combobox('getValue');
	var sDate = $("#expiryDate").datetimebox('getValue');//有效日期
	var desc = $("#editDesc").val();
	if(type==null || Number(type||'0')<=0){
		$.messager.alert('提示信息','选择一个VIP分类','info');
		return;
	}
	if(userId==null || userId.length<=0){
		$.messager.alert('提示信息','请选择一个用户','info');
		return;
	}
	if(sDate==null || sDate.length<=0){
		$.messager.alert('提示信息','时间不能为空','info');
		return;
	}
	sDate = chkInputDate(sDate);
	if(sDate==null || sDate.length<=0){
		$.messager.alert('提示信息','请输入有效时间','info');
		return;
	}
	
	var url='';
	var url = appPath+"/itbMember/addMemberInfo.action";//新建
	if(Number(mebId||'0')>0) {
		url = appPath+"/itbMember/updMemberInfo.action";//修改
	}
	var sendData = {
		"mem.member_id": mebId||"",
		"mem.user_id": userId || "",
		"mem.vip": type,
		"mem.expiry_time": sDate || "",
		"mem.desc": desc || ""
	};
    $.post(url, sendData, function(data){  
		if (data == "ok") { 
			$.messager.alert('提示信息','提交成功','info');
			doQuery1();
			$("#editForm").form('clear');
			$('#editDlg').window('close');
        }else if(data == 'exit'){
        	$.messager.alert('提示信息','所选用户已经是会员,请另选用户！','info');
        } else{
        	$.messager.alert("提示信息","提交失败",'info');
        	doQuery1();
        	$("#editForm").form('clear');
        	$('#editDlg').window('close');
        }
    });
}

//取消新建会员
function cancelEdit(){
	$('#editDlg').window('close');
	$("#editForm").form('clear');
}

//判断时间有效性
function chkInputDate(str){
	var reg = /^(\d+)-(\d{1,2})-(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;  
	var r = str.match(reg); 
	if(r==null)return '';  
	r[2]=r[2]-1;  
	var d= new Date(r[1], r[2],r[3], r[4],r[5], r[6]);  
	if(d.getFullYear()!=r[1])return '';  
	if(d.getMonth()!=r[2])return '';  
	if(d.getDate()!=r[3])return '';  
	if(d.getHours()!=r[4])return '';  
	if(d.getMinutes()!=r[5])return '';  
	if(d.getSeconds()!=r[6])return '';  
	return str;  
}

function getQueryParam() {
	var queryObject = {};
	var mobile=$("#queryMobile").val();
	if(mobile && mobile.length>0) queryObject.findMobile = mobile;
	var name = $("#queryName").val();
	if(name && name.length>0) queryObject.findName = name;
	var queryId = $("#queryId").val();
	if(queryId && queryId.length>0) queryObject.findId = queryId
	return queryObject;
}

function getQueryParam1() {
	var queryObject = {};
	var mobile=$("#mobile").val();
	if(mobile && mobile.length>0) queryObject.findMobile = mobile;
	var vName = $("#vipName").val();
	if(vName && vName.length>0) queryObject.findName = vName;
	var vipId = $("#vipId").val();
	if(vipId && vipId.length>0) queryObject.findId = vipId

	var queryState = $("#queryState").combobox('getValue');
	var findDtS = $("#queryDateStart").datebox('getValue');//获取开始结束日期
	var findDtE = $("#queryDateEnd").datebox('getValue');
	
	if (queryState &&  queryState.length>0) queryObject.findState = queryState;// 会员状态
	if(findDtS && findDtS.length>0) queryObject.findDateStart = chkInputDate(findDtS) + ' 00:00:00';
	if(findDtE && findDtE.length>0) queryObject.findDateEnd = chkInputDate(findDtE)+' 23:59:59';
	return queryObject;
}

//判断日期格式[YYYY-MM-DD]
function chkInputDate(dt){
	 var strDate=dt+'';
    var ss = (strDate.split('-'));
    var y = parseInt(ss[0],10);
    var m = parseInt(ss[1],10);
    var d = parseInt(ss[2],10);
    if (!isNaN(y) && !isNaN(m) && !isNaN(d)){
        var chkDt = new Date(y,m-1,d);
		if((chkDt.getFullYear()==y) &&((chkDt.getMonth()+1)==m) &&(chkDt.getDate()==d)) {
        	return dtFmt(chkDt);
        }
    }
    return '';
}

//加载角色 用户信息
function initUserInfoGrid() {
	$('#userInfoGrid').datagrid({
		url : appPath + "/itbMember/pageUserRoleInfo.action",
		height : 'full',
		fit:true,
		striped : true,
		fitColumns : true,
		queryParams : getQueryParam(),
		singleSelect : true,
		selectOnCheck : true,
		checkOnSelect : true,
		frozenColumns : [[{field : 'ck',checkbox : 'true',width : 10,align : 'center',sortable : false}]],
		columns : [[
		   {field : 'user_id',title : '用户ID',width : 15,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex) {
					return '<span style="color:#B22222;">'+value+'</span>';
				}
		   },
		   {field : 'user_name',title : '用户账号',width : 40,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex) {
				return '<span style="color:#9932CC;">'+value+'</span>'||'';
				}
			}, 
			{field : 'nickname',title : '用户昵称',width : 40,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex) {
					if(value){
						return value;
					}
				return '<span style="color:#919191;">-</span>';
				}
			}, 
			{field : 'wechat_nickname',title : '微信昵称',width : 40,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex) {
					if(value){
						return value;
					}
					return '<span style="color:#919191;">-</span>';
				}
			}, 
			{field : 'hx_user_name',title : '环信账号',width : 40,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex) {
					var ret = '<span style="color:#919191;">暂无</span>';
					if(value){
						ret = '<span style="color:red;">'+value+'</span>';
					}
					return ret;
					}
			}, 
			{field : 'mobile',title : '手机号',width : 40,align : 'left',sortable : false,
				formatter : function(value, rowData, rowIndex) {
					return value||'<span style="color:#919191;">暂未填写</span>';
				}
			},
			{field : 'email',title : '邮箱',width : 40,align : 'center',sortable : false,
				formatter : function(value, rowData, rowIndex) {
					return value||'<span style="color:#919191;">暂未填写</span>';
				}
			}]],
		pagination : true,
		rownumbers : true
	});
}

//确定选择用户
function chkUser(){
	var selectItem=$("#userInfoGrid").datagrid("getChecked");
	if(!selectItem || selectItem.length == 0){
		$.messager.alert('提示信息','请选择勾选用户！','warning');
		return;
	}
	var itemId = '';
	$.each(selectItem, function(index, item){
		itemId = item.user_id;
	});
	$("#eUserId").val(itemId);
	$("#userInfoDlg").window('close');
	$("#userForm").form('clear');
}

//取消添加会员
function cancelUser(){
	$("#userInfoDlg").window('close');
	$("#userForm").form('clear');	
}

/** 查询数据
 */
function doQuery(startFlg) {
	$("#userInfoGrid").datagrid('unselectAll');
	if (startFlg == 1) {
		$("#userInfoGrid").datagrid('load', getQueryParam());
	} else {
		$("#userInfoGrid").datagrid('reload', getQueryParam());
	}
}

function doQuery1(startFlg) {
	$("#memberInfo").datagrid('unselectAll');
	if (startFlg == 1) {
		$("#memberInfo").datagrid('load', getQueryParam1());
	} else {
		$("#memberInfo").datagrid('reload', getQueryParam1());
	}
}
